package cn.edu.gzhu.workOrderManagement.pojo.dto.workOrder;

import cn.edu.gzhu.workOrderManagement.constants.MessageConstant;
import cn.edu.gzhu.workOrderManagement.constants.WorkOrderAlertLevelConstant;
import lombok.Builder;
import lombok.Data;

import javax.validation.constraints.*;
import java.time.LocalDateTime;

@Data
@Builder
public class WorkOrderRepeatDto {

    /**
     * 唯一表示符，对外展示
     */
    @NotBlank
    private String uuid;

    /**
     * 工单预警级别，使用WorkOrderAlertLevelConstant
     */
    @Min(value = WorkOrderAlertLevelConstant.LOW)
    @Max(value = WorkOrderAlertLevelConstant.CRITICAL)
    private Integer alertLevel;


    /**
     * 处理者的用户名
     */
    @NotBlank
    private String targetUser;

    /**
     * 目标处理机构
     */
    @NotBlank
    private String targetOrganization;

    /**
     * 工单预期完成时间
     */
    @NotNull
    @Future
    private LocalDateTime expectedEndTime;

}
